package cn.sanch.system.mapper;

import cn.sanch.system.domain.Role;
import cn.sanch.basic.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author Sanch
 * @since 2022-06-11
 */
public interface RoleMapper extends BaseMapper<Role> {

    /**
     * 添加该角色的全部菜单到t_role_menu
     * @param id
     * @param menus
     */
    void addRoleMenus(@Param("roleId") Long id, @Param("menus") List<Long> menus);

    /**
     * // 添加该角色的全部权限到t_role_permission
     * @param id
     * @param permissions
     */
    void addRolePermissions(@Param("roleId") Long id, @Param("permissions") List<Long> permissions);

    /**
     * 删除中间表t_role_menu数据
     * @param id
     */
    void delRoleMenusByRoleID(Long id);

    /**
     * 删除中间表t_role_permission数据
     * @param id
     */
    void delRolePermissionsByRoleID(Long id);

    /**
     * 删除中间表t_employee_role数据
     * @param id
     */
    void delRoleEmployeesByRoleID(Long id);
}
